Skip to content

gdu 安装与使用

字数
715 字
阅读时间
3 分钟

适用场景:在 Linux 服务器上快速定位磁盘空间占用,尤其适合目录很多、磁盘较大的环境。

1. 简介

gdu 是一个用 Go 语言编写的磁盘占用分析工具。

  • 优点:支持并行扫描,速度快,界面直观。
  • 用途:快速定位服务器上哪个文件夹或文件最占空间。

2. 安装步骤(Linux 二进制安装法)

如果你没有 apt 权限或找不到包,执行以下步骤:

bash
# 1. 回到家目录并下载解压
cd ~
curl -L https://github.com/dundee/gdu/releases/latest/download/gdu_linux_amd64.tgz | tar xz

# 2. 赋予执行权限
chmod +x gdu_linux_amd64

# 3. 移动到系统路径(需要输入密码)
sudo mv gdu_linux_amd64 /usr/local/bin/gdu

# 4. 验证安装
gdu --version

3. 核心实战命令

针对你的多硬盘服务器,以下命令最常用:

  • 扫描前先看挂载点

    先确认哪些目录是单独挂载的磁盘,避免误把大盘也扫进去。

    bash
    df -hT
    lsblk -f
  • 最推荐:只扫系统盘,不扫挂载的大硬盘

    -x 参数会锁定在当前文件系统,不会跳到 /mnt/sdb 等其他硬盘。

    bash
    sudo gdu -x /
  • 列出所有硬盘并选择扫描

    像菜单一样列出所有磁盘的分区和使用率,按回车即可进入扫描。

    bash
    gdu -d
  • 排除特定目录扫描

    使用 -i 忽略不需要看的文件夹,多个目录用逗号隔开。

    bash
    sudo gdu -i /mnt,/sdd_data /
  • 只看当前目录下一层的体积

    先用 du 粗看,再决定是否进入 gdu 交互界面。

    bash
    sudo du -h --max-depth=1 / | sort -h

4. 界面操作快捷键

进入蓝色扫描结果界面后:

  • / :上下移动光标。
  • Enter:进入选中的目录。
  • Lefth:返回上一级目录。
  • d:删除选中的文件/文件夹,会有二次确认,慎用。
  • s:按大小排序,默认行为。
  • n:按名称排序。
  • q:退出程序。

5. 符号含义说明

  • !:读取目录出错,通常是权限不足,建议加 sudo
  • .:这是一个文件,不是文件夹。
  • @:这是一个符号链接。

6. 进阶技巧:保存与读取

如果你想扫描一次(比如 7TB 的大硬盘),以后随时看结果而不用重扫:

  1. 扫描并保存为文件

    bash
    gdu -o sdb_scan.json /mnt/sdb
  2. 以后直接读取该文件

    bash
    gdu -f sdb_scan.json

贡献者

页面历史